Numerous types of computing applications and protocols rely on the use of random data. For example, random numbers may be used for generating cryptographic keys or certificates that used in large numbers of transactions carried out over public and/or private networks. Such cryptographic keys and certificates are the basis of the trust placed in security algorithms by millions of end users and service providers, and are fundamental for providing data confidentiality, authentication and integrity. The vast majority of Internet-based services, which may cumulatively result in billions of dollars of business revenue annually, rely on the use of random data to implement some of the core infrastructure technologies used for those services. Government agencies such as revenue collection services and/or research establishments also utilize security algorithms dependent upon random data for critical operations.
The extent to which the applications and systems using the random data are truly secure may depend upon the quality of the random data. For example, malicious attackers may be able to penetrate the security more easily if the quality of the random numbers being used is poor (e.g., if there is a predictable correlation between different random numbers being used in a given security algorithm). The problem of poor random number quality may be exacerbated in certain types of environments, in which for example a small number of sources of physical phenomena assumed to be random are used to generate random data for use by multiple applications. At the same time, not all applications that use random data may require the data to have the same statistical qualities, and in such mixed-application scenarios, the costs of generating large amounts of high quality random data may have to be weighed against the benefits.
While embodiments are described herein by way of example for several embodiments and illustrative drawings, those skilled in the art will recognize that embodiments are not limited to the embodiments or drawings described. It should be understood, that the drawings and detailed description thereto are not intended to limit embodiments to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope as defined by the appended claims. The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to.